package com.scetoop.bank;

import java.util.ArrayList;
import java.util.List;

public class Customer {
    private String firstName;
    private String lastName;
////    这是关键！ 建立了Customer类和Account类的关系
//    private Account[] accounts;
//    private int accountCount;
    private List<Account> accounts;

    public Customer(String f, String l){
        this.firstName = f;
        this.lastName = l;
//        accounts = new  Account[5];
//        accountCount = 0;
        accounts = new ArrayList<>();
    }
    public String getFirstName(){
        return this.firstName;
    }
    public String getLastName(){
        return this.lastName;
    }

//    public void addAccount(Account account){
//        if (accountCount < accounts.length){
//            accounts[accountCount] = account;
//            accountCount++;
//        }else {
//            System.out.println("账号数量已达到上限，无法添加账户");
//        }
//    }
//    public Account getAccount(int index){
//        if (index >= 0 && index < accountCount){
//            return accounts[index];
//        }
//        return null;
//    }
////    public void setAccount(Account acct){
////        this.account = acct;
////    }
//      public void setAccount(Account acct) {
//        addAccount(acct);
//      }
//    public int getNumOfAccounts(){
//        return accountCount;
//    }
//    public SavingAccount getSavings() {
//        for (int i = 0; i < accountCount; i++) {
//            if (accounts[i] instanceof SavingAccount) {
//                return (SavingAccount) accounts[i];
//            }
//        }
//        return null;
//    }
//    public CheckingAccount getChecking() {
//        for (int i = 0; i < accountCount; i++) {
//            if (accounts[i] instanceof CheckingAccount) {
//                return (CheckingAccount) accounts[i];
//            }
//        }
//        return null;
//    }
//
//    public void setSaving(SavingAccount savings) {
//        addAccount(savings);
//    }
//
//    public void setChecking(CheckingAccount checking) {
//        addAccount(checking);
//    }
        public void addAccount(Account account) {
        accounts.add(account);
        }

        // 获取账户的方法
        public Account getAccount(int index) {
            return accounts.get(index);
        }

        // 获取账户数量的方法
        public int getNumOfAccounts() {
            return accounts.size();
        }
}

